package com.ruoyi.server.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.server.domain.ServerTask;
import com.ruoyi.server.domain.dto.ServerTaskPageDTO;
import org.apache.ibatis.annotations.Param;

/**
 * 区服任务Mapper接口
 *
 * @author ghostmen
 * @date 2024-10-31
 */
public interface ServerTaskMapper extends BaseMapper<ServerTask> {

    /**
     * 查询区服任务
     *
     * @param taskId 区服任务主键
     * @return 区服任务
     */
    public ServerTask selectServerTaskByTaskId(Long taskId);

    /**
     * 查询区服任务
     *
     * @param taskIds 区服任务主键
     * @return 区服任务
     */
    public List<ServerTask> selectServerTaskByTaskIds(@Param("taskIds") List<Long> taskIds);

    /**
     * 查询区服任务列表
     *
     * @param serverTask 区服任务
     * @return 区服任务集合
     */
    public List<ServerTask> selectServerTaskList(ServerTask serverTask);

    List<ServerTask> getServerTaskList();
    /**
     * 新增区服任务
     *
     * @param serverTask 区服任务
     * @return 结果
     */
    public int insertServerTask(ServerTask serverTask);

    /**
     * 修改区服任务
     *
     * @param serverTask 区服任务
     * @return 结果
     */
    public int updateServerTask(ServerTask serverTask);

    /**
     * 删除区服任务
     *
     * @param taskId 区服任务主键
     * @return 结果
     */
    public int deleteServerTaskByTaskId(Long taskId);

    /**
     * 批量删除区服任务
     *
     * @param taskIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteServerTaskByTaskIds(@Param("taskIds") Long[] taskIds);

    /**
     * @throws
     * @MethodName taskListByRegionId
     * @author zhouzihao
     * @param: pageDTO
     * @DateTime 2024年11月1日, 0001 下午 05:35
     * @return: java.util.List<com.ruoyi.server.domain.ServerTask>
     * @description:小程序，app查询区服任务列表
     */
    List<ServerTask> taskListByRegionId(ServerTaskPageDTO pageDTO);

    /**
     * 获取区服任务详细信息
     *
     * @param taskId
     * @return
     */
    ServerTask getAppServerTaskByTaskId(@Param("taskId") Long taskId);


}
